#2019年省赛-程序设计题 修改数组
def find(x):
    if x != s[x]:
        s[x] = find(s[x])
    return s[x]

n = int(input())
a = list(map(int, input().split()))
# 创建并查集
s = list(range(10**6 + 1))

# 使用find操作快速找到最小可用值
# 通过修改并查集指针来标记已使用的数字
# 确保每个元素都被修改为唯一且尽可能小的值
for i in range(n):
    a[i] = find(a[i])
    s[a[i]] = find(a[i] + 1)

# 避免了行末多余的空格
for i in range(n):
    print(a[i], end = '')
    if i != n - 1:
        print(' ', end = '')